package vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.navigator;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;

import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.emf.workspace.util.WorkspaceSynchronizer;
import org.eclipse.gmf.runtime.emf.core.GMFEditingDomainFactory;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.gmf.runtime.notation.Edge;
import org.eclipse.gmf.runtime.notation.Node;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.navigator.ICommonContentExtensionSite;
import org.eclipse.ui.navigator.ICommonContentProvider;

import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.AbstractPresentationEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.AbstractPresentationUIComponentCompartmentEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.AbstractUIComponent2EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.AbstractUIComponentEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.ActivatorEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.CommandDestinationsEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.InputFieldEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.MultipleChoiceEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.NavigatorEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.OutputFieldEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationContainerRelationshipEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationSystemEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship10EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship11EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship2EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship3EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship4EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship5EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship6EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship7EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship8EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationship9EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationTemporalRelationshipEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationUnitEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.PresentationUnitUIComponentCompartmentEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.SingleChoiceEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UIContainerRelationshipEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship10EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship11EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship2EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship3EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship4EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship5EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship6EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship7EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship8EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationship9EditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.edit.parts.UITemporalRelationshipEditPart;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.part.AdaptedauiVisualIDRegistry;
import vn.edu.hcmus.fit.se.mdd.mbuid.adaptedaui.diagram.part.Messages;

/**
 * @generated
 */
public class AdaptedauiNavigatorContentProvider implements
		ICommonContentProvider {

	/**
	 * @generated
	 */
	private static final Object[] EMPTY_ARRAY = new Object[0];

	/**
	 * @generated
	 */
	private Viewer myViewer;

	/**
	 * @generated
	 */
	private AdapterFactoryEditingDomain myEditingDomain;

	/**
	 * @generated
	 */
	private WorkspaceSynchronizer myWorkspaceSynchronizer;

	/**
	 * @generated
	 */
	private Runnable myViewerRefreshRunnable;

	/**
	 * @generated
	 */
	@SuppressWarnings({ "unchecked", "serial", "rawtypes" })
	public AdaptedauiNavigatorContentProvider() {
		TransactionalEditingDomain editingDomain = GMFEditingDomainFactory.INSTANCE
				.createEditingDomain();
		myEditingDomain = (AdapterFactoryEditingDomain) editingDomain;
		myEditingDomain.setResourceToReadOnlyMap(new HashMap() {
			public Object get(Object key) {
				if (!containsKey(key)) {
					put(key, Boolean.TRUE);
				}
				return super.get(key);
			}
		});
		myViewerRefreshRunnable = new Runnable() {
			public void run() {
				if (myViewer != null) {
					myViewer.refresh();
				}
			}
		};
		myWorkspaceSynchronizer = new WorkspaceSynchronizer(editingDomain,
				new WorkspaceSynchronizer.Delegate() {
					public void dispose() {
					}

					public boolean handleResourceChanged(final Resource resource) {
						unloadAllResources();
						asyncRefresh();
						return true;
					}

					public boolean handleResourceDeleted(Resource resource) {
						unloadAllResources();
						asyncRefresh();
						return true;
					}

					public boolean handleResourceMoved(Resource resource,
							final URI newURI) {
						unloadAllResources();
						asyncRefresh();
						return true;
					}
				});
	}

	/**
	 * @generated
	 */
	public void dispose() {
		myWorkspaceSynchronizer.dispose();
		myWorkspaceSynchronizer = null;
		myViewerRefreshRunnable = null;
		myViewer = null;
		unloadAllResources();
		((TransactionalEditingDomain) myEditingDomain).dispose();
		myEditingDomain = null;
	}

	/**
	 * @generated
	 */
	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
		myViewer = viewer;
	}

	/**
	 * @generated
	 */
	void unloadAllResources() {
		for (Resource nextResource : myEditingDomain.getResourceSet()
				.getResources()) {
			nextResource.unload();
		}
	}

	/**
	 * @generated
	 */
	void asyncRefresh() {
		if (myViewer != null && !myViewer.getControl().isDisposed()) {
			myViewer.getControl().getDisplay()
					.asyncExec(myViewerRefreshRunnable);
		}
	}

	/**
	 * @generated
	 */
	public Object[] getElements(Object inputElement) {
		return getChildren(inputElement);
	}

	/**
	 * @generated
	 */
	public void restoreState(IMemento aMemento) {
	}

	/**
	 * @generated
	 */
	public void saveState(IMemento aMemento) {
	}

	/**
	 * @generated
	 */
	public void init(ICommonContentExtensionSite aConfig) {
	}

	/**
	 * @generated
	 */
	public Object[] getChildren(Object parentElement) {
		if (parentElement instanceof IFile) {
			IFile file = (IFile) parentElement;
			URI fileURI = URI.createPlatformResourceURI(file.getFullPath()
					.toString(), true);
			Resource resource = myEditingDomain.getResourceSet().getResource(
					fileURI, true);
			ArrayList<AdaptedauiNavigatorItem> result = new ArrayList<AdaptedauiNavigatorItem>();
			ArrayList<View> topViews = new ArrayList<View>(resource
					.getContents().size());
			for (EObject o : resource.getContents()) {
				if (o instanceof View) {
					topViews.add((View) o);
				}
			}
			result.addAll(createNavigatorItems(
					selectViewsByType(topViews,
							PresentationSystemEditPart.MODEL_ID), file, false));
			return result.toArray();
		}

		if (parentElement instanceof AdaptedauiNavigatorGroup) {
			AdaptedauiNavigatorGroup group = (AdaptedauiNavigatorGroup) parentElement;
			return group.getChildren();
		}

		if (parentElement instanceof AdaptedauiNavigatorItem) {
			AdaptedauiNavigatorItem navigatorItem = (AdaptedauiNavigatorItem) parentElement;
			if (navigatorItem.isLeaf() || !isOwnView(navigatorItem.getView())) {
				return EMPTY_ARRAY;
			}
			return getViewChildren(navigatorItem.getView(), parentElement);
		}

		/*
		 * Due to plugin.xml restrictions this code will be called only for views representing
		 * shortcuts to this diagram elements created on other diagrams. 
		 */
		if (parentElement instanceof IAdaptable) {
			View view = (View) ((IAdaptable) parentElement)
					.getAdapter(View.class);
			if (view != null) {
				return getViewChildren(view, parentElement);
			}
		}

		return EMPTY_ARRAY;
	}

	/**
	 * @generated
	 */
	private Object[] getViewChildren(View view, Object parentElement) {
		switch (AdaptedauiVisualIDRegistry.getVisualID(view)) {

		case PresentationTemporalRelationship3EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4017_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4017_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case CommandDestinationsEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_CommandDestinations_4014_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_CommandDestinations_4014_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case SingleChoiceEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_SingleChoice_3006_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_SingleChoice_3006_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship7EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4021_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4021_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case MultipleChoiceEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_MultipleChoice_3002_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_MultipleChoice_3002_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case AbstractPresentationEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_AbstractPresentation_2002_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_AbstractPresentation_2002_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationContainerRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(CommandDestinationsEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case PresentationUnitEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationUnit_2001_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationUnit_2001_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitUIComponentCompartmentEditPart.VISUAL_ID));
			connectedViews = getChildrenByType(connectedViews,
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(CommandDestinationsEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case InputFieldEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_InputField_3003_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_InputField_3003_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case UITemporalRelationship7EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4007_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4007_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationshipEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4001_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4001_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship9EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4009_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4009_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship5EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4019_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4019_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship6EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4006_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4006_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship2EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4016_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4016_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case NavigatorEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_Navigator_3005_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_Navigator_3005_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(CommandDestinationsEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship8EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4022_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4022_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship6EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4020_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4020_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship10EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4024_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4024_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship10EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4010_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4010_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship11EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4011_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4011_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship4EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4018_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4018_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case ActivatorEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_Activator_3007_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_Activator_3007_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(CommandDestinationsEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case AbstractUIComponentEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_AbstractUIComponent_3001_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_AbstractUIComponent_3001_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case UIContainerRelationshipEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UIContainerRelationship_4012_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UIContainerRelationship_4012_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship5EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4005_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4005_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship9EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4023_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4023_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationContainerRelationshipEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationContainerRelationship_4013_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationContainerRelationship_4013_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship4EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4004_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4004_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationship11EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4025_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4025_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case OutputFieldEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_OutputField_3004_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_OutputField_3004_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}

		case UITemporalRelationship2EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4002_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4002_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship3EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4003_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4003_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case UITemporalRelationship8EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4008_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_UITemporalRelationship_4008_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponentEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(MultipleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(InputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(OutputFieldEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(NavigatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(SingleChoiceEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(ActivatorEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractUIComponent2EditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationTemporalRelationshipEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Edge sv = (Edge) view;
			AdaptedauiNavigatorGroup target = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4015_target,
					"icons/linkTargetNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup source = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationTemporalRelationship_4015_source,
					"icons/linkSourceNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksTargetByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			target.addChildren(createNavigatorItems(connectedViews, target,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			connectedViews = getLinksSourceByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			source.addChildren(createNavigatorItems(connectedViews, source,
					true));
			if (!target.isEmpty()) {
				result.add(target);
			}
			if (!source.isEmpty()) {
				result.add(source);
			}
			return result.toArray();
		}

		case PresentationSystemEditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			result.addAll(getForeignShortcuts((Diagram) view, parentElement));
			Diagram sv = (Diagram) view;
			AdaptedauiNavigatorGroup links = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_PresentationSystem_1000_links,
					"icons/linksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getChildrenByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationUnitEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getChildrenByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(AbstractPresentationEditPart.VISUAL_ID));
			result.addAll(createNavigatorItems(connectedViews, parentElement,
					false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationContainerRelationshipEditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(CommandDestinationsEditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationshipEditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship2EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship3EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship4EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship5EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship6EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship7EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship8EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship9EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship10EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			connectedViews = getDiagramLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(PresentationTemporalRelationship11EditPart.VISUAL_ID));
			links.addChildren(createNavigatorItems(connectedViews, links, false));
			if (!links.isEmpty()) {
				result.add(links);
			}
			return result.toArray();
		}

		case AbstractUIComponent2EditPart.VISUAL_ID: {
			LinkedList<AdaptedauiAbstractNavigatorItem> result = new LinkedList<AdaptedauiAbstractNavigatorItem>();
			Node sv = (Node) view;
			AdaptedauiNavigatorGroup incominglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_AbstractUIComponent_3009_incominglinks,
					"icons/incomingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			AdaptedauiNavigatorGroup outgoinglinks = new AdaptedauiNavigatorGroup(
					Messages.NavigatorGroupName_AbstractUIComponent_3009_outgoinglinks,
					"icons/outgoingLinksNavigatorGroup.gif", parentElement); //$NON-NLS-1$
			Collection<View> connectedViews;
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship2EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship3EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship4EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship5EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship6EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship7EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship8EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship9EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship10EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(
					Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UITemporalRelationship11EditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			connectedViews = getIncomingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			incominglinks.addChildren(createNavigatorItems(connectedViews,
					incominglinks, true));
			connectedViews = getOutgoingLinksByType(Collections.singleton(sv),
					AdaptedauiVisualIDRegistry
							.getType(UIContainerRelationshipEditPart.VISUAL_ID));
			outgoinglinks.addChildren(createNavigatorItems(connectedViews,
					outgoinglinks, true));
			if (!incominglinks.isEmpty()) {
				result.add(incominglinks);
			}
			if (!outgoinglinks.isEmpty()) {
				result.add(outgoinglinks);
			}
			return result.toArray();
		}
		}
		return EMPTY_ARRAY;
	}

	/**
	 * @generated
	 */
	private Collection<View> getLinksSourceByType(Collection<Edge> edges,
			String type) {
		LinkedList<View> result = new LinkedList<View>();
		for (Edge nextEdge : edges) {
			View nextEdgeSource = nextEdge.getSource();
			if (type.equals(nextEdgeSource.getType())
					&& isOwnView(nextEdgeSource)) {
				result.add(nextEdgeSource);
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private Collection<View> getLinksTargetByType(Collection<Edge> edges,
			String type) {
		LinkedList<View> result = new LinkedList<View>();
		for (Edge nextEdge : edges) {
			View nextEdgeTarget = nextEdge.getTarget();
			if (type.equals(nextEdgeTarget.getType())
					&& isOwnView(nextEdgeTarget)) {
				result.add(nextEdgeTarget);
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private Collection<View> getOutgoingLinksByType(
			Collection<? extends View> nodes, String type) {
		LinkedList<View> result = new LinkedList<View>();
		for (View nextNode : nodes) {
			result.addAll(selectViewsByType(nextNode.getSourceEdges(), type));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private Collection<View> getIncomingLinksByType(
			Collection<? extends View> nodes, String type) {
		LinkedList<View> result = new LinkedList<View>();
		for (View nextNode : nodes) {
			result.addAll(selectViewsByType(nextNode.getTargetEdges(), type));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private Collection<View> getChildrenByType(
			Collection<? extends View> nodes, String type) {
		LinkedList<View> result = new LinkedList<View>();
		for (View nextNode : nodes) {
			result.addAll(selectViewsByType(nextNode.getChildren(), type));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private Collection<View> getDiagramLinksByType(
			Collection<Diagram> diagrams, String type) {
		ArrayList<View> result = new ArrayList<View>();
		for (Diagram nextDiagram : diagrams) {
			result.addAll(selectViewsByType(nextDiagram.getEdges(), type));
		}
		return result;
	}

	// TODO refactor as static method
	/**
	 * @generated
	 */
	private Collection<View> selectViewsByType(Collection<View> views,
			String type) {
		ArrayList<View> result = new ArrayList<View>();
		for (View nextView : views) {
			if (type.equals(nextView.getType()) && isOwnView(nextView)) {
				result.add(nextView);
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private boolean isOwnView(View view) {
		return PresentationSystemEditPart.MODEL_ID
				.equals(AdaptedauiVisualIDRegistry.getModelID(view));
	}

	/**
	 * @generated
	 */
	private Collection<AdaptedauiNavigatorItem> createNavigatorItems(
			Collection<View> views, Object parent, boolean isLeafs) {
		ArrayList<AdaptedauiNavigatorItem> result = new ArrayList<AdaptedauiNavigatorItem>(
				views.size());
		for (View nextView : views) {
			result.add(new AdaptedauiNavigatorItem(nextView, parent, isLeafs));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private Collection<AdaptedauiNavigatorItem> getForeignShortcuts(
			Diagram diagram, Object parent) {
		LinkedList<View> result = new LinkedList<View>();
		for (Iterator<View> it = diagram.getChildren().iterator(); it.hasNext();) {
			View nextView = it.next();
			if (!isOwnView(nextView)
					&& nextView.getEAnnotation("Shortcut") != null) { //$NON-NLS-1$
				result.add(nextView);
			}
		}
		return createNavigatorItems(result, parent, false);
	}

	/**
	 * @generated
	 */
	public Object getParent(Object element) {
		if (element instanceof AdaptedauiAbstractNavigatorItem) {
			AdaptedauiAbstractNavigatorItem abstractNavigatorItem = (AdaptedauiAbstractNavigatorItem) element;
			return abstractNavigatorItem.getParent();
		}
		return null;
	}

	/**
	 * @generated
	 */
	public boolean hasChildren(Object element) {
		return element instanceof IFile || getChildren(element).length > 0;
	}

}
